package com.sunny.fetch.pojo;

import java.util.ArrayList;
import java.util.List;

public class FWzIndexExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public FWzIndexExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andTidIsNull() {
            addCriterion("tid is null");
            return (Criteria) this;
        }

        public Criteria andTidIsNotNull() {
            addCriterion("tid is not null");
            return (Criteria) this;
        }

        public Criteria andTidEqualTo(Long value) {
            addCriterion("tid =", value, "tid");
            return (Criteria) this;
        }

        public Criteria andTidNotEqualTo(Long value) {
            addCriterion("tid <>", value, "tid");
            return (Criteria) this;
        }

        public Criteria andTidGreaterThan(Long value) {
            addCriterion("tid >", value, "tid");
            return (Criteria) this;
        }

        public Criteria andTidGreaterThanOrEqualTo(Long value) {
            addCriterion("tid >=", value, "tid");
            return (Criteria) this;
        }

        public Criteria andTidLessThan(Long value) {
            addCriterion("tid <", value, "tid");
            return (Criteria) this;
        }

        public Criteria andTidLessThanOrEqualTo(Long value) {
            addCriterion("tid <=", value, "tid");
            return (Criteria) this;
        }

        public Criteria andTidIn(List<Long> values) {
            addCriterion("tid in", values, "tid");
            return (Criteria) this;
        }

        public Criteria andTidNotIn(List<Long> values) {
            addCriterion("tid not in", values, "tid");
            return (Criteria) this;
        }

        public Criteria andTidBetween(Long value1, Long value2) {
            addCriterion("tid between", value1, value2, "tid");
            return (Criteria) this;
        }

        public Criteria andTidNotBetween(Long value1, Long value2) {
            addCriterion("tid not between", value1, value2, "tid");
            return (Criteria) this;
        }

        public Criteria andDateIsNull() {
            addCriterion("date is null");
            return (Criteria) this;
        }

        public Criteria andDateIsNotNull() {
            addCriterion("date is not null");
            return (Criteria) this;
        }

        public Criteria andDateEqualTo(String value) {
            addCriterion("date =", value, "date");
            return (Criteria) this;
        }

        public Criteria andDateNotEqualTo(String value) {
            addCriterion("date <>", value, "date");
            return (Criteria) this;
        }

        public Criteria andDateGreaterThan(String value) {
            addCriterion("date >", value, "date");
            return (Criteria) this;
        }

        public Criteria andDateGreaterThanOrEqualTo(String value) {
            addCriterion("date >=", value, "date");
            return (Criteria) this;
        }

        public Criteria andDateLessThan(String value) {
            addCriterion("date <", value, "date");
            return (Criteria) this;
        }

        public Criteria andDateLessThanOrEqualTo(String value) {
            addCriterion("date <=", value, "date");
            return (Criteria) this;
        }

        public Criteria andDateLike(String value) {
            addCriterion("date like", value, "date");
            return (Criteria) this;
        }

        public Criteria andDateNotLike(String value) {
            addCriterion("date not like", value, "date");
            return (Criteria) this;
        }

        public Criteria andDateIn(List<String> values) {
            addCriterion("date in", values, "date");
            return (Criteria) this;
        }

        public Criteria andDateNotIn(List<String> values) {
            addCriterion("date not in", values, "date");
            return (Criteria) this;
        }

        public Criteria andDateBetween(String value1, String value2) {
            addCriterion("date between", value1, value2, "date");
            return (Criteria) this;
        }

        public Criteria andDateNotBetween(String value1, String value2) {
            addCriterion("date not between", value1, value2, "date");
            return (Criteria) this;
        }

        public Criteria andCompRateIsNull() {
            addCriterion("comp_rate is null");
            return (Criteria) this;
        }

        public Criteria andCompRateIsNotNull() {
            addCriterion("comp_rate is not null");
            return (Criteria) this;
        }

        public Criteria andCompRateEqualTo(Float value) {
            addCriterion("comp_rate =", value, "compRate");
            return (Criteria) this;
        }

        public Criteria andCompRateNotEqualTo(Float value) {
            addCriterion("comp_rate <>", value, "compRate");
            return (Criteria) this;
        }

        public Criteria andCompRateGreaterThan(Float value) {
            addCriterion("comp_rate >", value, "compRate");
            return (Criteria) this;
        }

        public Criteria andCompRateGreaterThanOrEqualTo(Float value) {
            addCriterion("comp_rate >=", value, "compRate");
            return (Criteria) this;
        }

        public Criteria andCompRateLessThan(Float value) {
            addCriterion("comp_rate <", value, "compRate");
            return (Criteria) this;
        }

        public Criteria andCompRateLessThanOrEqualTo(Float value) {
            addCriterion("comp_rate <=", value, "compRate");
            return (Criteria) this;
        }

        public Criteria andCompRateIn(List<Float> values) {
            addCriterion("comp_rate in", values, "compRate");
            return (Criteria) this;
        }

        public Criteria andCompRateNotIn(List<Float> values) {
            addCriterion("comp_rate not in", values, "compRate");
            return (Criteria) this;
        }

        public Criteria andCompRateBetween(Float value1, Float value2) {
            addCriterion("comp_rate between", value1, value2, "compRate");
            return (Criteria) this;
        }

        public Criteria andCompRateNotBetween(Float value1, Float value2) {
            addCriterion("comp_rate not between", value1, value2, "compRate");
            return (Criteria) this;
        }

        public Criteria andCenterRateIsNull() {
            addCriterion("center_rate is null");
            return (Criteria) this;
        }

        public Criteria andCenterRateIsNotNull() {
            addCriterion("center_rate is not null");
            return (Criteria) this;
        }

        public Criteria andCenterRateEqualTo(Float value) {
            addCriterion("center_rate =", value, "centerRate");
            return (Criteria) this;
        }

        public Criteria andCenterRateNotEqualTo(Float value) {
            addCriterion("center_rate <>", value, "centerRate");
            return (Criteria) this;
        }

        public Criteria andCenterRateGreaterThan(Float value) {
            addCriterion("center_rate >", value, "centerRate");
            return (Criteria) this;
        }

        public Criteria andCenterRateGreaterThanOrEqualTo(Float value) {
            addCriterion("center_rate >=", value, "centerRate");
            return (Criteria) this;
        }

        public Criteria andCenterRateLessThan(Float value) {
            addCriterion("center_rate <", value, "centerRate");
            return (Criteria) this;
        }

        public Criteria andCenterRateLessThanOrEqualTo(Float value) {
            addCriterion("center_rate <=", value, "centerRate");
            return (Criteria) this;
        }

        public Criteria andCenterRateIn(List<Float> values) {
            addCriterion("center_rate in", values, "centerRate");
            return (Criteria) this;
        }

        public Criteria andCenterRateNotIn(List<Float> values) {
            addCriterion("center_rate not in", values, "centerRate");
            return (Criteria) this;
        }

        public Criteria andCenterRateBetween(Float value1, Float value2) {
            addCriterion("center_rate between", value1, value2, "centerRate");
            return (Criteria) this;
        }

        public Criteria andCenterRateNotBetween(Float value1, Float value2) {
            addCriterion("center_rate not between", value1, value2, "centerRate");
            return (Criteria) this;
        }

        public Criteria andMicroRateIsNull() {
            addCriterion("micro_rate is null");
            return (Criteria) this;
        }

        public Criteria andMicroRateIsNotNull() {
            addCriterion("micro_rate is not null");
            return (Criteria) this;
        }

        public Criteria andMicroRateEqualTo(Float value) {
            addCriterion("micro_rate =", value, "microRate");
            return (Criteria) this;
        }

        public Criteria andMicroRateNotEqualTo(Float value) {
            addCriterion("micro_rate <>", value, "microRate");
            return (Criteria) this;
        }

        public Criteria andMicroRateGreaterThan(Float value) {
            addCriterion("micro_rate >", value, "microRate");
            return (Criteria) this;
        }

        public Criteria andMicroRateGreaterThanOrEqualTo(Float value) {
            addCriterion("micro_rate >=", value, "microRate");
            return (Criteria) this;
        }

        public Criteria andMicroRateLessThan(Float value) {
            addCriterion("micro_rate <", value, "microRate");
            return (Criteria) this;
        }

        public Criteria andMicroRateLessThanOrEqualTo(Float value) {
            addCriterion("micro_rate <=", value, "microRate");
            return (Criteria) this;
        }

        public Criteria andMicroRateIn(List<Float> values) {
            addCriterion("micro_rate in", values, "microRate");
            return (Criteria) this;
        }

        public Criteria andMicroRateNotIn(List<Float> values) {
            addCriterion("micro_rate not in", values, "microRate");
            return (Criteria) this;
        }

        public Criteria andMicroRateBetween(Float value1, Float value2) {
            addCriterion("micro_rate between", value1, value2, "microRate");
            return (Criteria) this;
        }

        public Criteria andMicroRateNotBetween(Float value1, Float value2) {
            addCriterion("micro_rate not between", value1, value2, "microRate");
            return (Criteria) this;
        }

        public Criteria andCmRateIsNull() {
            addCriterion("cm_rate is null");
            return (Criteria) this;
        }

        public Criteria andCmRateIsNotNull() {
            addCriterion("cm_rate is not null");
            return (Criteria) this;
        }

        public Criteria andCmRateEqualTo(Float value) {
            addCriterion("cm_rate =", value, "cmRate");
            return (Criteria) this;
        }

        public Criteria andCmRateNotEqualTo(Float value) {
            addCriterion("cm_rate <>", value, "cmRate");
            return (Criteria) this;
        }

        public Criteria andCmRateGreaterThan(Float value) {
            addCriterion("cm_rate >", value, "cmRate");
            return (Criteria) this;
        }

        public Criteria andCmRateGreaterThanOrEqualTo(Float value) {
            addCriterion("cm_rate >=", value, "cmRate");
            return (Criteria) this;
        }

        public Criteria andCmRateLessThan(Float value) {
            addCriterion("cm_rate <", value, "cmRate");
            return (Criteria) this;
        }

        public Criteria andCmRateLessThanOrEqualTo(Float value) {
            addCriterion("cm_rate <=", value, "cmRate");
            return (Criteria) this;
        }

        public Criteria andCmRateIn(List<Float> values) {
            addCriterion("cm_rate in", values, "cmRate");
            return (Criteria) this;
        }

        public Criteria andCmRateNotIn(List<Float> values) {
            addCriterion("cm_rate not in", values, "cmRate");
            return (Criteria) this;
        }

        public Criteria andCmRateBetween(Float value1, Float value2) {
            addCriterion("cm_rate between", value1, value2, "cmRate");
            return (Criteria) this;
        }

        public Criteria andCmRateNotBetween(Float value1, Float value2) {
            addCriterion("cm_rate not between", value1, value2, "cmRate");
            return (Criteria) this;
        }

        public Criteria andSdbRateIsNull() {
            addCriterion("sdb_rate is null");
            return (Criteria) this;
        }

        public Criteria andSdbRateIsNotNull() {
            addCriterion("sdb_rate is not null");
            return (Criteria) this;
        }

        public Criteria andSdbRateEqualTo(Float value) {
            addCriterion("sdb_rate =", value, "sdbRate");
            return (Criteria) this;
        }

        public Criteria andSdbRateNotEqualTo(Float value) {
            addCriterion("sdb_rate <>", value, "sdbRate");
            return (Criteria) this;
        }

        public Criteria andSdbRateGreaterThan(Float value) {
            addCriterion("sdb_rate >", value, "sdbRate");
            return (Criteria) this;
        }

        public Criteria andSdbRateGreaterThanOrEqualTo(Float value) {
            addCriterion("sdb_rate >=", value, "sdbRate");
            return (Criteria) this;
        }

        public Criteria andSdbRateLessThan(Float value) {
            addCriterion("sdb_rate <", value, "sdbRate");
            return (Criteria) this;
        }

        public Criteria andSdbRateLessThanOrEqualTo(Float value) {
            addCriterion("sdb_rate <=", value, "sdbRate");
            return (Criteria) this;
        }

        public Criteria andSdbRateIn(List<Float> values) {
            addCriterion("sdb_rate in", values, "sdbRate");
            return (Criteria) this;
        }

        public Criteria andSdbRateNotIn(List<Float> values) {
            addCriterion("sdb_rate not in", values, "sdbRate");
            return (Criteria) this;
        }

        public Criteria andSdbRateBetween(Float value1, Float value2) {
            addCriterion("sdb_rate between", value1, value2, "sdbRate");
            return (Criteria) this;
        }

        public Criteria andSdbRateNotBetween(Float value1, Float value2) {
            addCriterion("sdb_rate not between", value1, value2, "sdbRate");
            return (Criteria) this;
        }

        public Criteria andOmRateIsNull() {
            addCriterion("om_rate is null");
            return (Criteria) this;
        }

        public Criteria andOmRateIsNotNull() {
            addCriterion("om_rate is not null");
            return (Criteria) this;
        }

        public Criteria andOmRateEqualTo(Float value) {
            addCriterion("om_rate =", value, "omRate");
            return (Criteria) this;
        }

        public Criteria andOmRateNotEqualTo(Float value) {
            addCriterion("om_rate <>", value, "omRate");
            return (Criteria) this;
        }

        public Criteria andOmRateGreaterThan(Float value) {
            addCriterion("om_rate >", value, "omRate");
            return (Criteria) this;
        }

        public Criteria andOmRateGreaterThanOrEqualTo(Float value) {
            addCriterion("om_rate >=", value, "omRate");
            return (Criteria) this;
        }

        public Criteria andOmRateLessThan(Float value) {
            addCriterion("om_rate <", value, "omRate");
            return (Criteria) this;
        }

        public Criteria andOmRateLessThanOrEqualTo(Float value) {
            addCriterion("om_rate <=", value, "omRate");
            return (Criteria) this;
        }

        public Criteria andOmRateIn(List<Float> values) {
            addCriterion("om_rate in", values, "omRate");
            return (Criteria) this;
        }

        public Criteria andOmRateNotIn(List<Float> values) {
            addCriterion("om_rate not in", values, "omRate");
            return (Criteria) this;
        }

        public Criteria andOmRateBetween(Float value1, Float value2) {
            addCriterion("om_rate between", value1, value2, "omRate");
            return (Criteria) this;
        }

        public Criteria andOmRateNotBetween(Float value1, Float value2) {
            addCriterion("om_rate not between", value1, value2, "omRate");
            return (Criteria) this;
        }

        public Criteria andAaRateIsNull() {
            addCriterion("aa_rate is null");
            return (Criteria) this;
        }

        public Criteria andAaRateIsNotNull() {
            addCriterion("aa_rate is not null");
            return (Criteria) this;
        }

        public Criteria andAaRateEqualTo(Float value) {
            addCriterion("aa_rate =", value, "aaRate");
            return (Criteria) this;
        }

        public Criteria andAaRateNotEqualTo(Float value) {
            addCriterion("aa_rate <>", value, "aaRate");
            return (Criteria) this;
        }

        public Criteria andAaRateGreaterThan(Float value) {
            addCriterion("aa_rate >", value, "aaRate");
            return (Criteria) this;
        }

        public Criteria andAaRateGreaterThanOrEqualTo(Float value) {
            addCriterion("aa_rate >=", value, "aaRate");
            return (Criteria) this;
        }

        public Criteria andAaRateLessThan(Float value) {
            addCriterion("aa_rate <", value, "aaRate");
            return (Criteria) this;
        }

        public Criteria andAaRateLessThanOrEqualTo(Float value) {
            addCriterion("aa_rate <=", value, "aaRate");
            return (Criteria) this;
        }

        public Criteria andAaRateIn(List<Float> values) {
            addCriterion("aa_rate in", values, "aaRate");
            return (Criteria) this;
        }

        public Criteria andAaRateNotIn(List<Float> values) {
            addCriterion("aa_rate not in", values, "aaRate");
            return (Criteria) this;
        }

        public Criteria andAaRateBetween(Float value1, Float value2) {
            addCriterion("aa_rate between", value1, value2, "aaRate");
            return (Criteria) this;
        }

        public Criteria andAaRateNotBetween(Float value1, Float value2) {
            addCriterion("aa_rate not between", value1, value2, "aaRate");
            return (Criteria) this;
        }

        public Criteria andM1RateIsNull() {
            addCriterion("m1_rate is null");
            return (Criteria) this;
        }

        public Criteria andM1RateIsNotNull() {
            addCriterion("m1_rate is not null");
            return (Criteria) this;
        }

        public Criteria andM1RateEqualTo(Float value) {
            addCriterion("m1_rate =", value, "m1Rate");
            return (Criteria) this;
        }

        public Criteria andM1RateNotEqualTo(Float value) {
            addCriterion("m1_rate <>", value, "m1Rate");
            return (Criteria) this;
        }

        public Criteria andM1RateGreaterThan(Float value) {
            addCriterion("m1_rate >", value, "m1Rate");
            return (Criteria) this;
        }

        public Criteria andM1RateGreaterThanOrEqualTo(Float value) {
            addCriterion("m1_rate >=", value, "m1Rate");
            return (Criteria) this;
        }

        public Criteria andM1RateLessThan(Float value) {
            addCriterion("m1_rate <", value, "m1Rate");
            return (Criteria) this;
        }

        public Criteria andM1RateLessThanOrEqualTo(Float value) {
            addCriterion("m1_rate <=", value, "m1Rate");
            return (Criteria) this;
        }

        public Criteria andM1RateIn(List<Float> values) {
            addCriterion("m1_rate in", values, "m1Rate");
            return (Criteria) this;
        }

        public Criteria andM1RateNotIn(List<Float> values) {
            addCriterion("m1_rate not in", values, "m1Rate");
            return (Criteria) this;
        }

        public Criteria andM1RateBetween(Float value1, Float value2) {
            addCriterion("m1_rate between", value1, value2, "m1Rate");
            return (Criteria) this;
        }

        public Criteria andM1RateNotBetween(Float value1, Float value2) {
            addCriterion("m1_rate not between", value1, value2, "m1Rate");
            return (Criteria) this;
        }

        public Criteria andM3RateIsNull() {
            addCriterion("m3_rate is null");
            return (Criteria) this;
        }

        public Criteria andM3RateIsNotNull() {
            addCriterion("m3_rate is not null");
            return (Criteria) this;
        }

        public Criteria andM3RateEqualTo(Float value) {
            addCriterion("m3_rate =", value, "m3Rate");
            return (Criteria) this;
        }

        public Criteria andM3RateNotEqualTo(Float value) {
            addCriterion("m3_rate <>", value, "m3Rate");
            return (Criteria) this;
        }

        public Criteria andM3RateGreaterThan(Float value) {
            addCriterion("m3_rate >", value, "m3Rate");
            return (Criteria) this;
        }

        public Criteria andM3RateGreaterThanOrEqualTo(Float value) {
            addCriterion("m3_rate >=", value, "m3Rate");
            return (Criteria) this;
        }

        public Criteria andM3RateLessThan(Float value) {
            addCriterion("m3_rate <", value, "m3Rate");
            return (Criteria) this;
        }

        public Criteria andM3RateLessThanOrEqualTo(Float value) {
            addCriterion("m3_rate <=", value, "m3Rate");
            return (Criteria) this;
        }

        public Criteria andM3RateIn(List<Float> values) {
            addCriterion("m3_rate in", values, "m3Rate");
            return (Criteria) this;
        }

        public Criteria andM3RateNotIn(List<Float> values) {
            addCriterion("m3_rate not in", values, "m3Rate");
            return (Criteria) this;
        }

        public Criteria andM3RateBetween(Float value1, Float value2) {
            addCriterion("m3_rate between", value1, value2, "m3Rate");
            return (Criteria) this;
        }

        public Criteria andM3RateNotBetween(Float value1, Float value2) {
            addCriterion("m3_rate not between", value1, value2, "m3Rate");
            return (Criteria) this;
        }

        public Criteria andM6RateIsNull() {
            addCriterion("m6_rate is null");
            return (Criteria) this;
        }

        public Criteria andM6RateIsNotNull() {
            addCriterion("m6_rate is not null");
            return (Criteria) this;
        }

        public Criteria andM6RateEqualTo(Float value) {
            addCriterion("m6_rate =", value, "m6Rate");
            return (Criteria) this;
        }

        public Criteria andM6RateNotEqualTo(Float value) {
            addCriterion("m6_rate <>", value, "m6Rate");
            return (Criteria) this;
        }

        public Criteria andM6RateGreaterThan(Float value) {
            addCriterion("m6_rate >", value, "m6Rate");
            return (Criteria) this;
        }

        public Criteria andM6RateGreaterThanOrEqualTo(Float value) {
            addCriterion("m6_rate >=", value, "m6Rate");
            return (Criteria) this;
        }

        public Criteria andM6RateLessThan(Float value) {
            addCriterion("m6_rate <", value, "m6Rate");
            return (Criteria) this;
        }

        public Criteria andM6RateLessThanOrEqualTo(Float value) {
            addCriterion("m6_rate <=", value, "m6Rate");
            return (Criteria) this;
        }

        public Criteria andM6RateIn(List<Float> values) {
            addCriterion("m6_rate in", values, "m6Rate");
            return (Criteria) this;
        }

        public Criteria andM6RateNotIn(List<Float> values) {
            addCriterion("m6_rate not in", values, "m6Rate");
            return (Criteria) this;
        }

        public Criteria andM6RateBetween(Float value1, Float value2) {
            addCriterion("m6_rate between", value1, value2, "m6Rate");
            return (Criteria) this;
        }

        public Criteria andM6RateNotBetween(Float value1, Float value2) {
            addCriterion("m6_rate not between", value1, value2, "m6Rate");
            return (Criteria) this;
        }

        public Criteria andM12RateIsNull() {
            addCriterion("m12_rate is null");
            return (Criteria) this;
        }

        public Criteria andM12RateIsNotNull() {
            addCriterion("m12_rate is not null");
            return (Criteria) this;
        }

        public Criteria andM12RateEqualTo(Float value) {
            addCriterion("m12_rate =", value, "m12Rate");
            return (Criteria) this;
        }

        public Criteria andM12RateNotEqualTo(Float value) {
            addCriterion("m12_rate <>", value, "m12Rate");
            return (Criteria) this;
        }

        public Criteria andM12RateGreaterThan(Float value) {
            addCriterion("m12_rate >", value, "m12Rate");
            return (Criteria) this;
        }

        public Criteria andM12RateGreaterThanOrEqualTo(Float value) {
            addCriterion("m12_rate >=", value, "m12Rate");
            return (Criteria) this;
        }

        public Criteria andM12RateLessThan(Float value) {
            addCriterion("m12_rate <", value, "m12Rate");
            return (Criteria) this;
        }

        public Criteria andM12RateLessThanOrEqualTo(Float value) {
            addCriterion("m12_rate <=", value, "m12Rate");
            return (Criteria) this;
        }

        public Criteria andM12RateIn(List<Float> values) {
            addCriterion("m12_rate in", values, "m12Rate");
            return (Criteria) this;
        }

        public Criteria andM12RateNotIn(List<Float> values) {
            addCriterion("m12_rate not in", values, "m12Rate");
            return (Criteria) this;
        }

        public Criteria andM12RateBetween(Float value1, Float value2) {
            addCriterion("m12_rate between", value1, value2, "m12Rate");
            return (Criteria) this;
        }

        public Criteria andM12RateNotBetween(Float value1, Float value2) {
            addCriterion("m12_rate not between", value1, value2, "m12Rate");
            return (Criteria) this;
        }

        public Criteria andLongRateIsNull() {
            addCriterion("long_rate is null");
            return (Criteria) this;
        }

        public Criteria andLongRateIsNotNull() {
            addCriterion("long_rate is not null");
            return (Criteria) this;
        }

        public Criteria andLongRateEqualTo(Float value) {
            addCriterion("long_rate =", value, "longRate");
            return (Criteria) this;
        }

        public Criteria andLongRateNotEqualTo(Float value) {
            addCriterion("long_rate <>", value, "longRate");
            return (Criteria) this;
        }

        public Criteria andLongRateGreaterThan(Float value) {
            addCriterion("long_rate >", value, "longRate");
            return (Criteria) this;
        }

        public Criteria andLongRateGreaterThanOrEqualTo(Float value) {
            addCriterion("long_rate >=", value, "longRate");
            return (Criteria) this;
        }

        public Criteria andLongRateLessThan(Float value) {
            addCriterion("long_rate <", value, "longRate");
            return (Criteria) this;
        }

        public Criteria andLongRateLessThanOrEqualTo(Float value) {
            addCriterion("long_rate <=", value, "longRate");
            return (Criteria) this;
        }

        public Criteria andLongRateIn(List<Float> values) {
            addCriterion("long_rate in", values, "longRate");
            return (Criteria) this;
        }

        public Criteria andLongRateNotIn(List<Float> values) {
            addCriterion("long_rate not in", values, "longRate");
            return (Criteria) this;
        }

        public Criteria andLongRateBetween(Float value1, Float value2) {
            addCriterion("long_rate between", value1, value2, "longRate");
            return (Criteria) this;
        }

        public Criteria andLongRateNotBetween(Float value1, Float value2) {
            addCriterion("long_rate not between", value1, value2, "longRate");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}